<?php //22-08-2012 zendcast zendform ajax ?>

<h1>Composite Zend Form Elements</h1>
<?= $this->form; ?>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<script type="text/javascript">
$(function()
{
    $("input").blur(function()
    {
        var formElementId = $(this).parent().prev().find('label').attr('for');
        doValidation(formElementId);
    });
});

/**
 * Funkcja js wysylajaca do ajaxa - uruchamiana jest gdy zaznacze cos w inpucie
 */
function doValidation(id)
{
	console.log('doValidation - odpalenie');
    var url = 'test/formtest';
  // tworzy obiekt json. musi takie cos byc bo inaczej nie bedzie wiedziec js ze robie jsona
    var data = {};
    $("input").each(function()
    {
        data[$(this).attr('name')] = $(this).val();
    });

    console.log(data);
    
    // wysłamnie AAJAXOWE !
    $.post(url,data,function(resp)
    {
        $("#"+id).parent().find('.errors').remove();
        $("#"+id).parent().append(getErrorHtml(resp[id], id));
    },'json');
}
 
function getErrorHtml(formErrors , id)
{
    var o = '<ul id="errors-'+id+'" class="errors">';
    for(errorKey in formErrors)
    {
        o += '<li>' + formErrors[errorKey] + '</li>';
    }
    o += '</ul>';
    return o;
}

</script>